/**
 * 自动生成！请勿修改！
 */
import { command } from '../core/command';

class AirConditioner {
    constructor(opt = {}) {
        const { device, to, ...opts } = opt;

        this.device = device || {};
        this.opts = opts || {};
        this._to = to;
    }

    get categoryCode() {
        return '010040004';
    }

    get categoryName() {
        return '\u667a\u80fd\u7a7a\u8c03';
    }

    getChildLock(params) {
        return command({
            method: 'getChildLock',
            methodId: 'pz93I4TI',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getCurrentHumidity(params) {
        return command({
            method: 'getCurrentHumidity',
            methodId: 'pXZuHl6n',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getCurrentTemperature(params) {
        return command({
            method: 'getCurrentTemperature',
            methodId: 'pBTQTKa9',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getEcoMode(params) {
        return command({
            method: 'getEcoMode',
            methodId: 'UmaSzf8P',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getHumidity(params) {
        return command({
            method: 'getHumidity',
            methodId: 'pNnZFmGK',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getIndicatorSwitch(params) {
        return command({
            method: 'getIndicatorSwitch',
            methodId: 'pkpDnuDz',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getMode(params) {
        return command({
            method: 'getMode',
            methodId: 'UaMCoOHw',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getSleepMode(params) {
        return command({
            method: 'getSleepMode',
            methodId: 'p0cr80jE',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getSwitch(params) {
        return command({
            method: 'getSwitch',
            methodId: 'Unfc9Fnm',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTemperature(params) {
        return command({
            method: 'getTemperature',
            methodId: 'pj7xj5oM',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getWindDirection(params) {
        return command({
            method: 'getWindDirection',
            methodId: 'pWG0KwP5',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getWindRange(params) {
        return command({
            method: 'getWindRange',
            methodId: 'pqYwmPdl',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getWindSpeed(params) {
        return command({
            method: 'getWindSpeed',
            methodId: 'UODeNjFU',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setChildLock(params) {
        return command({
            method: 'setChildLock',
            methodId: 'pUPQ5S43',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setEcoMode(params) {
        return command({
            method: 'setEcoMode',
            methodId: 'phEqdqq1',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setHumidity(params) {
        return command({
            method: 'setHumidity',
            methodId: 'pGoxs3Hx',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setIndicatorSwitch(params) {
        return command({
            method: 'setIndicatorSwitch',
            methodId: 'peH3AFdS',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setMode(params) {
        return command({
            method: 'setMode',
            methodId: 'ptRSCYSo',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setRemoveFaultAlarm(params) {
        return command({
            method: 'setRemoveFaultAlarm',
            methodId: 'p3delseW',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setSleepMode(params) {
        return command({
            method: 'setSleepMode',
            methodId: 'pZgR0V8G',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setSwitch(params) {
        return command({
            method: 'setSwitch',
            methodId: 'pgh0vbzk',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setTemperature(params) {
        return command({
            method: 'setTemperature',
            methodId: 'ppAXwfBV',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setWindDirection(params) {
        return command({
            method: 'setWindDirection',
            methodId: 'pDrhJxKq',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setWindRange(params) {
        return command({
            method: 'setWindRange',
            methodId: 'p1vFcGFb',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setWindSpeed(params) {
        return command({
            method: 'setWindSpeed',
            methodId: 'pdN7PDCR',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }
}

export default AirConditioner;
